Improve UX of project creation and details modals#496
Conversation
Up to standards ✅🟢 Issues
|
| Metric | Results |
|---|---|
| Complexity | 94 |
NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.
There was a problem hiding this comment.
Pull request overview
Improves the UX and behavior of the “Create Project” modal by converting it into a single-page form with validation, better error handling, and post-create navigation.
Changes:
- Reworks the modal UI (removes tabs, adds collapsible optional “Identity” section) and makes it a real
<form>to support Enter-to-submit. - Adds client-side validation, prevents modal close on create failure, waits for create request to finish, and redirects directly to the created project.
- Introduces a new API constant for concise project queries and adds new i18n keys used by the updated UI.
Reviewed changes
Copilot reviewed 17 out of 17 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| src/views/portfolio/projects/ProjectList.vue | Stops listening for a refresh event from the create modal (no longer needed with redirect-on-success). |
| src/views/portfolio/projects/ProjectCreateProjectModal.vue | Major UI/UX refactor: form submission, validation feedback, identity collapse, improved create flow and navigation. |
| src/shared/api.json | Adds URL_PROJECT_CONCISE constant used to fetch/search parent project options. |
| src/i18n/locales/en.json | Adds new English strings for tooltip/validation/optional identity hint. |
| src/i18n/locales/de.json | Adds placeholder entries for new keys. |
| src/i18n/locales/es.json | Adds placeholder entries for new keys. |
| src/i18n/locales/fr.json | Adds placeholder entries for new keys. |
| src/i18n/locales/hi.json | Adds placeholder entries for new keys. |
| src/i18n/locales/it.json | Adds placeholder entries for new keys. |
| src/i18n/locales/ja.json | Adds placeholder entries for new keys. |
| src/i18n/locales/pl.json | Adds placeholder entries for new keys. |
| src/i18n/locales/pt.json | Adds placeholder entries for new keys. |
| src/i18n/locales/pt-BR.json | Adds placeholder entries for new keys. |
| src/i18n/locales/ru.json | Adds placeholder entries for new keys. |
| src/i18n/locales/uk-UA.json | Adds placeholder entries for new keys. |
| src/i18n/locales/zh.json | Adds placeholder entries for new keys. |
| src/App.vue | Relaxes content-type matching for problem+json/json responses in the global Axios error handler. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
92cc986 to
29ae1e5
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 17 out of 17 changed files in this pull request and generated 5 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
c26c66f to
66ebec9
Compare
66ebec9 to
7a75da8
Compare
* For the creation modal, replaces the separate "General" and "Identity" tabs with a non-tabbed view. "Identity" is now a collapsible section that is explicitly marked as optional. * Makes both modals a proper form, such that it supports confirmation by pressing enter etc. * Adds proper input validation to prevent invalid configurations from being submitted, e.g. missing classifier, collection project enabled but no collection logic selected, etc. * Prevents the modals from closing when project creation fails. Lets users refine their inputs and retry. * Waits for the creation / update requests to complete before closing the modals. * Redirects directly to the created project instead of back to the project list. * Moves common logic to a shared mixin. Also fixes a reactivity issue in the details modal, where it was initialized with a deep clone of a project object, which lead to field changes not being observable. Signed-off-by: nscuro <nscuro@protonmail.com>
7a75da8 to
90f7efb
Compare
Description
Improves UX of project creation and details modals:
Also fixes a reactivity issue in the details modal, where it was initialized with a deep clone of a project object, which lead to field changes not being observable.
Addressed Issue
N/A
Additional Details
Before:
After:
Checklist
This PR introduces new or alters existing behavior, and I have updated the documentation accordingly